package com.hao.main;

import java.util.ArrayList;

import GiaoHangVietNam.Entities.InvoiceDetails;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;

public class InterChangeInvoidAdapter extends ArrayAdapter<String>{

	InterChangInvoiceDetailActivity context = null;
	ArrayList<String> invoiceInterChangeArray = null;
	int layoutId;
	public InterChangeInvoidAdapter(InterChangInvoiceDetailActivity context, int layoutId, ArrayList<String> arr) {
		// TODO Auto-generated constructor stub
		super(context, layoutId, arr);
		this.context = context;
		this.layoutId = layoutId;
		this.invoiceInterChangeArray = arr;
	}
	
	public View getView(int position, View convertView, ViewGroup parent) {
		/**
		 * bạn chú ý là ở đây Tôi không làm: if(convertView==null) {
		 * LayoutInflater inflater= context.getLayoutInflater();
		 * convertView=inflater.inflate(layoutId, null); } Lý do là ta phải xử
		 * lý xóa phần tử Checked, nếu dùng If thì nó lại checked cho các phần
		 * tử khác sau khi xóa vì convertView lưu lại trạng thái trước đó
		 */
		LayoutInflater inflater = context.getLayoutInflater();
		convertView = inflater.inflate(layoutId, null);
		
			// dòng lệnh lấy TextView ra để hiển thị loại mặt hàng
			final TextView nameInvoiceInterChangeTv = (TextView) convertView
					.findViewById(R.id.name_invoice__inter_change_tv);
			
			final String invoiceInterChangeObject = invoiceInterChangeArray.get(position);
		
			nameInvoiceInterChangeTv.setText(invoiceInterChangeObject + "");
		
		// Vì View là Object là dạng tham chiếu đối tượng, nên
		// mọi sự thay đổi của các object bên trong convertView
		// thì nó cũng biết sự thay đổi đó
		return convertView;// trả về View này, tức là trả luôn
		// về các thông số mới mà ta vừa thay đổi
	}
	@Override
	public void notifyDataSetChanged() {
		// TODO Auto-generated method stub
		super.notifyDataSetChanged(); 
	}
}
